<!doctype html>
<html class="default no-js">
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>OpenAPI3RouterFactory | @vertx/web-api-contract</title>
	<meta name="description" content="">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
	<div class="tsd-page-toolbar">
		<div class="container">
			<div class="table-wrap">
				<div class="table-cell" id="tsd-search" data-index="../assets/js/search.js" data-base="..">
					<div class="field">
						<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
						<input id="tsd-search-field" type="text" />
					</div>
					<ul class="results">
						<li class="state loading">Preparing search index...</li>
						<li class="state failure">The search index is not available</li>
					</ul>
					<a href="../index.html" class="title">@vertx/web-api-contract</a>
				</div>
				<div class="table-cell" id="tsd-widgets">
					<div id="tsd-filter">
						<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
						<div class="tsd-filter-group">
							<div class="tsd-select" id="tsd-filter-visibility">
								<span class="tsd-select-label">All</span>
								<ul class="tsd-select-list">
									<li data-value="public">Public</li>
									<li data-value="protected">Public/Protected</li>
									<li data-value="private" class="selected">All</li>
								</ul>
							</div>
							<input type="checkbox" id="tsd-filter-inherited" checked />
							<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
							<input type="checkbox" id="tsd-filter-only-exported" />
							<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
						</div>
					</div>
					<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
				</div>
			</div>
		</div>
	</div>
	<div class="tsd-page-title">
		<div class="container">
			<ul class="tsd-breadcrumb">
				<li>
					<a href="../globals.html">Globals</a>
				</li>
				<li>
					<a href="openapi3routerfactory.html">OpenAPI3RouterFactory</a>
				</li>
			</ul>
			<h1>Class OpenAPI3RouterFactory</h1>
		</div>
	</div>
</header>
<div class="container container-main">
	<div class="row">
		<div class="col-8 col-content">
			<section class="tsd-panel tsd-comment">
				<div class="tsd-comment tsd-typography">
					<div class="lead">
						<p>Interface for OpenAPI3RouterFactory. <br/>
							To add an handler, use {@link OpenAPI3RouterFactory#addHandlerByOperationId(String, Handler)}<br/>
							Usage example:
							<pre>
 {@code
 OpenAPI3RouterFactory.create(vertx, &quot;src/resources/spec.yaml&quot;, asyncResult -&gt; {
  if (!asyncResult.succeeded()) {
     // IO failure or spec invalid
  } else {
     OpenAPI3RouterFactory routerFactory = asyncResult.result();
     routerFactory.addHandlerByOperationId(&quot;operation_id&quot;, routingContext -&gt; {
        // Do something
     }, routingContext -&gt; {
        // Do something with failure handler
     });
     Router router = routerFactory.getRouter();
  }
 });
 }
 </pre>
							<br/>
							Handlers are loaded in this order:<br/>
							<ol>
								<li>Body handler (Customizable with {@link this#setBodyHandler(BodyHandler)}</li>
								<li>Custom global handlers configurable with {@link this#addGlobalHandler(Handler)}</li>
								<li>Global security handlers defined in upper spec level</li>
								<li>Operation specific security handlers</li>
								<li>Generated validation handler</li>
								<li>User handlers or &quot;Not implemented&quot; handler</li>
						</ol></p>
					</div>
					<dl class="tsd-comment-tags">
						<dt>author</dt>
						<dd><p>Francesco Guardiani @slinkydeveloper</p>
						</dd>
					</dl>
				</div>
			</section>
			<section class="tsd-panel tsd-hierarchy">
				<h3>Hierarchy</h3>
				<ul class="tsd-hierarchy">
					<li>
						<span class="target">OpenAPI3RouterFactory</span>
					</li>
				</ul>
			</section>
			<section class="tsd-panel">
				<h3>Implements</h3>
				<ul class="tsd-hierarchy">
					<li><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
				</ul>
			</section>
			<section class="tsd-panel-group tsd-index-group">
				<h2>Index</h2>
				<section class="tsd-panel tsd-index-panel">
					<div class="tsd-index-content">
						<section class="tsd-index-section ">
							<h3>Methods</h3>
							<ul class="tsd-index-list">
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#addfailurehandlerbyoperationid" class="tsd-kind-icon">add<wbr>Failure<wbr>Handler<wbr>ByOperation<wbr>Id</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#addglobalhandler" class="tsd-kind-icon">add<wbr>Global<wbr>Handler</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#addhandlerbyoperationid" class="tsd-kind-icon">add<wbr>Handler<wbr>ByOperation<wbr>Id</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#addsecurityhandler" class="tsd-kind-icon">add<wbr>Security<wbr>Handler</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#addsecurityschemascopevalidator" class="tsd-kind-icon">add<wbr>Security<wbr>Schema<wbr>Scope<wbr>Validator</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#getoptions" class="tsd-kind-icon">get<wbr>Options</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#getrouter" class="tsd-kind-icon">get<wbr>Router</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#getvalidationfailurehandler" class="tsd-kind-icon">get<wbr>Validation<wbr>Failure<wbr>Handler</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#mountoperationtoeventbus" class="tsd-kind-icon">mount<wbr>Operation<wbr>ToEvent<wbr>Bus</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#mountservicefromtag" class="tsd-kind-icon">mount<wbr>Service<wbr>From<wbr>Tag</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#mountservicesfromextensions" class="tsd-kind-icon">mount<wbr>Services<wbr>From<wbr>Extensions</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#setbodyhandler" class="tsd-kind-icon">set<wbr>Body<wbr>Handler</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#setextraoperationcontextpayloadmapper" class="tsd-kind-icon">set<wbr>Extra<wbr>Operation<wbr>Context<wbr>Payload<wbr>Mapper</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#setnotimplementedfailurehandler" class="tsd-kind-icon">set<wbr>Not<wbr>Implemented<wbr>Failure<wbr>Handler</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#setoptions" class="tsd-kind-icon">set<wbr>Options</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="openapi3routerfactory.html#setvalidationfailurehandler" class="tsd-kind-icon">set<wbr>Validation<wbr>Failure<wbr>Handler</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class tsd-is-static"><a href="openapi3routerfactory.html#create" class="tsd-kind-icon">create</a></li>
							</ul>
						</section>
					</div>
				</section>
			</section>
			<section class="tsd-panel-group tsd-member-group ">
				<h2>Methods</h2>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="addfailurehandlerbyoperationid" class="tsd-anchor"></a>
					<h3>add<wbr>Failure<wbr>Handler<wbr>ByOperation<wbr>Id</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">add<wbr>Failure<wbr>Handler<wbr>ByOperation<wbr>Id<span class="tsd-signature-symbol">(</span>operationId<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, failureHandler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:475</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Add a failure handler by operation_id field in Operation object</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>operationId: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>failureHandler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></h4>
							<p>this factory</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="addglobalhandler" class="tsd-anchor"></a>
					<h3>add<wbr>Global<wbr>Handler</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">add<wbr>Global<wbr>Handler<span class="tsd-signature-symbol">(</span>globalHandler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:439</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Add global handler to be applied prior to {@link io.vertx.ext.web.Router} being generated. <br/>
									Please note that you should not add a body handler inside that list. If you want to modify the body handler, please use {@link RouterFactory#setBodyHandler(BodyHandler)}</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>globalHandler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
							<p>this object</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="addhandlerbyoperationid" class="tsd-anchor"></a>
					<h3>add<wbr>Handler<wbr>ByOperation<wbr>Id</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">add<wbr>Handler<wbr>ByOperation<wbr>Id<span class="tsd-signature-symbol">(</span>operationId<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:466</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Add an handler by operation_id field in Operation object</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>operationId: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>handler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></h4>
							<p>this factory</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="addsecurityhandler" class="tsd-anchor"></a>
					<h3>add<wbr>Security<wbr>Handler</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">add<wbr>Security<wbr>Handler<span class="tsd-signature-symbol">(</span>securitySchemaName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:373</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Mount to paths that have to follow a security schema a security handler</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>securitySchemaName: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>handler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="addsecurityschemascopevalidator" class="tsd-anchor"></a>
					<h3>add<wbr>Security<wbr>Schema<wbr>Scope<wbr>Validator</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">add<wbr>Security<wbr>Schema<wbr>Scope<wbr>Validator<span class="tsd-signature-symbol">(</span>securitySchemaName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, scopeName<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:457</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Add a particular scope validator. The main security schema will not be called if a specific scope validator is
									configured</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>securitySchemaName: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>scopeName: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>handler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></h4>
							<p>this factory</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="getoptions" class="tsd-anchor"></a>
					<h3>get<wbr>Options</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">get<wbr>Options<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="routerfactoryoptions.html" class="tsd-signature-type">RouterFactoryOptions</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<p>Implementation of <a href="../interfaces/routerfactory.html">RouterFactory</a>.<a href="../interfaces/routerfactory.html#getoptions">getOptions</a></p>
								<ul>
									<li>Defined in index.d.ts:386</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Get options of router factory. For more info <a href="routerfactoryoptions.html">RouterFactoryOptions</a></p>
								</div>
							</div>
							<h4 class="tsd-returns-title">Returns <a href="routerfactoryoptions.html" class="tsd-signature-type">RouterFactoryOptions</a></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="getrouter" class="tsd-anchor"></a>
					<h3>get<wbr>Router</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">get<wbr>Router<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Router</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<p>Implementation of <a href="../interfaces/routerfactory.html">RouterFactory</a>.<a href="../interfaces/routerfactory.html#getrouter">getRouter</a></p>
								<ul>
									<li>Defined in index.d.ts:394</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Construct a new router based on spec. It will fail if you are trying to mount a spec with security schemes
										without assigned handlers<br/>
									<b>Note:</b> Router is constructed in this function, so it will be respected the path definition ordering.</p>
								</div>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Router</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="getvalidationfailurehandler" class="tsd-anchor"></a>
					<h3>get<wbr>Validation<wbr>Failure<wbr>Handler</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">get<wbr>Validation<wbr>Failure<wbr>Handler<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<p>Implementation of <a href="../interfaces/routerfactory.html">RouterFactory</a>.<a href="../interfaces/routerfactory.html#getvalidationfailurehandler">getValidationFailureHandler</a></p>
								<ul>
									<li>Defined in index.d.ts:401</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<dl class="tsd-comment-tags">
									<dt>deprecated</dt>
									<dd><p>Router Factory won&#39;t manage the validation errors anymore. You must use {@link io.vertx.ext.web.Router#errorHandler(int, Handler)} with 400 error</p>
									</dd>
								</dl>
							</div>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">function</span>
								<span class="tsd-signature-symbol"> | </span>
								<span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span>
							</h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="mountoperationtoeventbus" class="tsd-anchor"></a>
					<h3>mount<wbr>Operation<wbr>ToEvent<wbr>Bus</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">mount<wbr>Operation<wbr>ToEvent<wbr>Bus<span class="tsd-signature-symbol">(</span>operationId<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, address<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:484</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Specify to route an incoming request for specified operation id to a Web Api Service mounted at the specified address on event bus. Please give a look at <a href="https://vertx.io/docs/vertx-web-api-service/java/">vertx-web-api-service documentation</a> for more informations</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>operationId: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>address: <span class="tsd-signature-type">string</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></h4>
							<p>this factory</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="mountservicefromtag" class="tsd-anchor"></a>
					<h3>mount<wbr>Service<wbr>From<wbr>Tag</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">mount<wbr>Service<wbr>From<wbr>Tag<span class="tsd-signature-symbol">(</span>tag<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, address<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:494</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Specify to route an incoming request for all operations that contains the specified tag to a Web Api Service mounted at the specified address on event bus.
									The request is handled by the method that matches the operation id. Please give a look at <a href="https://vertx.io/docs/vertx-web-api-service/java/">vertx-web-api-service documentation</a> for more informations</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>tag: <span class="tsd-signature-type">string</span></h5>
								</li>
								<li>
									<h5>address: <span class="tsd-signature-type">string</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></h4>
							<p>this factory</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="mountservicesfromextensions" class="tsd-anchor"></a>
					<h3>mount<wbr>Services<wbr>From<wbr>Extensions</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">mount<wbr>Services<wbr>From<wbr>Extensions<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:501</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Introspect the OpenAPI spec to mount handlers for all operations that specifies a x-vertx-event-bus annotation. Please give a look at <a href="https://vertx.io/docs/vertx-web-api-service/java/">vertx-web-api-service documentation</a> for more informations</p>
								</div>
							</div>
							<h4 class="tsd-returns-title">Returns <a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a></h4>
							<p>this factory</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="setbodyhandler" class="tsd-anchor"></a>
					<h3>set<wbr>Body<wbr>Handler</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">set<wbr>Body<wbr>Handler<span class="tsd-signature-symbol">(</span>bodyHandler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">BodyHandler</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<p>Implementation of <a href="../interfaces/routerfactory.html">RouterFactory</a>.<a href="../interfaces/routerfactory.html#setbodyhandler">setBodyHandler</a></p>
								<ul>
									<li>Defined in index.d.ts:430</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Supply your own BodyHandler if you would like to control body limit, uploads directory and deletion of uploaded files</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>bodyHandler: <span class="tsd-signature-type">BodyHandler</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
							<p>self</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="setextraoperationcontextpayloadmapper" class="tsd-anchor"></a>
					<h3>set<wbr>Extra<wbr>Operation<wbr>Context<wbr>Payload<wbr>Mapper</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">set<wbr>Extra<wbr>Operation<wbr>Context<wbr>Payload<wbr>Mapper<span class="tsd-signature-symbol">(</span>extraOperationContextPayloadMapper<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:446</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>When set, this function is called while creating the payload of {@link io.vertx.ext.web.api.OperationRequest}</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>extraOperationContextPayloadMapper: <span class="tsd-signature-type">function</span></h5>
									<ul class="tsd-parameters">
										<li class="tsd-parameter-siganture">
											<ul class="tsd-signatures tsd-kind-type-literal tsd-is-not-exported">
												<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">(</span>arg<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">object</span></li>
											</ul>
											<ul class="tsd-descriptions">
												<li class="tsd-description">
													<h4 class="tsd-parameters-title">Parameters</h4>
													<ul class="tsd-parameters">
														<li>
															<h5>arg: <span class="tsd-signature-type">RoutingContext</span></h5>
														</li>
													</ul>
													<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">object</span></h4>
													<ul class="tsd-parameters">
														<li class="tsd-parameter-index-signature">
															<h5><span class="tsd-signature-symbol">[</span>key: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]: </span><span class="tsd-signature-type">any</span></h5>
														</li>
													</ul>
												</li>
											</ul>
										</li>
									</ul>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="setnotimplementedfailurehandler" class="tsd-anchor"></a>
					<h3>set<wbr>Not<wbr>Implemented<wbr>Failure<wbr>Handler</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">set<wbr>Not<wbr>Implemented<wbr>Failure<wbr>Handler<span class="tsd-signature-symbol">(</span>notImplementedFailureHandler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:422</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Set not implemented failure handler. It&#39;s called when you don&#39;t define an handler for a
										specific operation. You can enable/disable this feature from
									{@link RouterFactoryOptions#setMountNotImplementedHandler(boolean)}</p>
								</div>
								<dl class="tsd-comment-tags">
									<dt>deprecated</dt>
									<dd><p>You must use {@link io.vertx.ext.web.Router#errorHandler(int, Handler)} with 501 error</p>
									</dd>
								</dl>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>notImplementedFailureHandler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
							<p>this object</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="setoptions" class="tsd-anchor"></a>
					<h3>set<wbr>Options</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">set<wbr>Options<span class="tsd-signature-symbol">(</span>options<span class="tsd-signature-symbol">: </span><a href="routerfactoryoptions.html" class="tsd-signature-type">RouterFactoryOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<p>Implementation of <a href="../interfaces/routerfactory.html">RouterFactory</a>.<a href="../interfaces/routerfactory.html#setoptions">setOptions</a></p>
								<ul>
									<li>Defined in index.d.ts:380</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Set options of router factory. For more info <a href="routerfactoryoptions.html">RouterFactoryOptions</a></p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>options: <a href="routerfactoryoptions.html" class="tsd-signature-type">RouterFactoryOptions</a></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="setvalidationfailurehandler" class="tsd-anchor"></a>
					<h3>set<wbr>Validation<wbr>Failure<wbr>Handler</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">set<wbr>Validation<wbr>Failure<wbr>Handler<span class="tsd-signature-symbol">(</span>validationFailureHandler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:411</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Set default validation failure handler. You can enable/disable this feature from
									{@link RouterFactoryOptions#setMountValidationFailureHandler(boolean)}</p>
								</div>
								<dl class="tsd-comment-tags">
									<dt>deprecated</dt>
									<dd><p>Router Factory won&#39;t manage the validation errors anymore. You must use {@link io.vertx.ext.web.Router#errorHandler(int, Handler)} with 400 error</p>
									</dd>
								</dl>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>validationFailureHandler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">RoutingContext</span><span class="tsd-signature-symbol">&gt;</span></h5>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <a href="../interfaces/routerfactory.html" class="tsd-signature-type">RouterFactory</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></h4>
							<p>this object</p>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-static">
					<a name="create" class="tsd-anchor"></a>
					<h3><span class="tsd-flag ts-flagStatic">Static</span> create</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-static">
						<li class="tsd-signature tsd-kind-icon">create<span class="tsd-signature-symbol">(</span>vertx<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Vertx</span>, url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">AsyncResult</span><span class="tsd-signature-symbol">&lt;</span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
						<li class="tsd-signature tsd-kind-icon">create<span class="tsd-signature-symbol">(</span>vertx<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Vertx</span>, url<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, auth<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">object</span><span class="tsd-signature-symbol">[]</span>, handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">AsyncResult</span><span class="tsd-signature-symbol">&lt;</span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:510</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Create a new OpenAPI3RouterFactory</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>vertx: <span class="tsd-signature-type">Vertx</span></h5>
								</li>
								<li>
									<h5>url: <span class="tsd-signature-type">string</span></h5>
									<div class="tsd-comment tsd-typography">
										<p>location of your spec. It can be an absolute path, a local path or remote url (with HTTP protocol)</p>
									</div>
								</li>
								<li>
									<h5>handler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">AsyncResult</span><span class="tsd-signature-symbol">&lt;</span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h5>
									<div class="tsd-comment tsd-typography">
										<p>When specification is loaded, this handler will be called with AsyncResult<OpenAPI3RouterFactory></p>
									</div>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
						</li>
						<li class="tsd-description">
							<aside class="tsd-sources">
								<ul>
									<li>Defined in index.d.ts:521</li>
								</ul>
							</aside>
							<div class="tsd-comment tsd-typography">
								<div class="lead">
									<p>Create a new OpenAPI3RouterFactory</p>
								</div>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>vertx: <span class="tsd-signature-type">Vertx</span></h5>
								</li>
								<li>
									<h5>url: <span class="tsd-signature-type">string</span></h5>
									<div class="tsd-comment tsd-typography">
										<p>location of your spec. It can be an absolute path, a local path or remote url (with HTTP protocol)</p>
									</div>
								</li>
								<li>
									<h5>auth: <span class="tsd-signature-type">object</span><span class="tsd-signature-symbol">[]</span></h5>
									<div class="tsd-comment tsd-typography">
										<p>list of authorization values needed to access the remote url. Each item should be json representation
										of an {@link AuthorizationValue}</p>
									</div>
								</li>
								<li>
									<h5>handler: <span class="tsd-signature-type">function</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Handler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">AsyncResult</span><span class="tsd-signature-symbol">&lt;</span><a href="openapi3routerfactory.html" class="tsd-signature-type">OpenAPI3RouterFactory</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol">&gt;</span></h5>
									<div class="tsd-comment tsd-typography">
										<p>When specification is loaded, this handler will be called with AsyncResult<OpenAPI3RouterFactory></p>
									</div>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
						</li>
					</ul>
				</section>
			</section>
		</div>
		<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
			<nav class="tsd-navigation primary">
				<ul>
					<li class="globals  ">
						<a href="../globals.html"><em>Globals</em></a>
					</li>
				</ul>
			</nav>
			<nav class="tsd-navigation secondary menu-sticky">
				<ul class="before-current">
					<li class=" tsd-kind-enum">
						<a href="../enums/containerserializationstyle.html" class="tsd-kind-icon">Container<wbr>Serialization<wbr>Style</a>
					</li>
					<li class=" tsd-kind-enum">
						<a href="../enums/parameterlocation.html" class="tsd-kind-icon">Parameter<wbr>Location</a>
					</li>
					<li class=" tsd-kind-enum">
						<a href="../enums/parametertype.html" class="tsd-kind-icon">Parameter<wbr>Type</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="containerdeserializer.html" class="tsd-kind-icon">Container<wbr>Deserializer</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="customvalidator.html" class="tsd-kind-icon">Custom<wbr>Validator</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="httprequestvalidationhandler.html" class="tsd-kind-icon">HTTPRequest<wbr>Validation<wbr>Handler</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="openapi3requestvalidationhandler.html" class="tsd-kind-icon">OpenAPI3<wbr>Request<wbr>Validation<wbr>Handler</a>
					</li>
				</ul>
				<ul class="current">
					<li class="current tsd-kind-class">
						<a href="openapi3routerfactory.html" class="tsd-kind-icon">OpenAPI3<wbr>Router<wbr>Factory</a>
						<ul>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#addfailurehandlerbyoperationid" class="tsd-kind-icon">add<wbr>Failure<wbr>Handler<wbr>ByOperation<wbr>Id</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#addglobalhandler" class="tsd-kind-icon">add<wbr>Global<wbr>Handler</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#addhandlerbyoperationid" class="tsd-kind-icon">add<wbr>Handler<wbr>ByOperation<wbr>Id</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#addsecurityhandler" class="tsd-kind-icon">add<wbr>Security<wbr>Handler</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#addsecurityschemascopevalidator" class="tsd-kind-icon">add<wbr>Security<wbr>Schema<wbr>Scope<wbr>Validator</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#getoptions" class="tsd-kind-icon">get<wbr>Options</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#getrouter" class="tsd-kind-icon">get<wbr>Router</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#getvalidationfailurehandler" class="tsd-kind-icon">get<wbr>Validation<wbr>Failure<wbr>Handler</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#mountoperationtoeventbus" class="tsd-kind-icon">mount<wbr>Operation<wbr>ToEvent<wbr>Bus</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#mountservicefromtag" class="tsd-kind-icon">mount<wbr>Service<wbr>From<wbr>Tag</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#mountservicesfromextensions" class="tsd-kind-icon">mount<wbr>Services<wbr>From<wbr>Extensions</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#setbodyhandler" class="tsd-kind-icon">set<wbr>Body<wbr>Handler</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#setextraoperationcontextpayloadmapper" class="tsd-kind-icon">set<wbr>Extra<wbr>Operation<wbr>Context<wbr>Payload<wbr>Mapper</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#setnotimplementedfailurehandler" class="tsd-kind-icon">set<wbr>Not<wbr>Implemented<wbr>Failure<wbr>Handler</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#setoptions" class="tsd-kind-icon">set<wbr>Options</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="openapi3routerfactory.html#setvalidationfailurehandler" class="tsd-kind-icon">set<wbr>Validation<wbr>Failure<wbr>Handler</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-static">
								<a href="openapi3routerfactory.html#create" class="tsd-kind-icon">create</a>
							</li>
						</ul>
					</li>
				</ul>
				<ul class="after-current">
					<li class=" tsd-kind-class">
						<a href="operationrequest.html" class="tsd-kind-icon">Operation<wbr>Request</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="operationresponse.html" class="tsd-kind-icon">Operation<wbr>Response</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="parametertypevalidator.html" class="tsd-kind-icon">Parameter<wbr>Type<wbr>Validator</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="parametervalidationrule.html" class="tsd-kind-icon">Parameter<wbr>Validation<wbr>Rule</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="requestparameter.html" class="tsd-kind-icon">Request<wbr>Parameter</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="requestparameters.html" class="tsd-kind-icon">Request<wbr>Parameters</a>
					</li>
					<li class=" tsd-kind-class">
						<a href="routerfactoryoptions.html" class="tsd-kind-icon">Router<wbr>Factory<wbr>Options</a>
					</li>
					<li class=" tsd-kind-interface">
						<a href="../interfaces/httpoperationrequestvalidationhandler.html" class="tsd-kind-icon">HTTPOperation<wbr>Request<wbr>Validation<wbr>Handler</a>
					</li>
					<li class=" tsd-kind-interface tsd-has-type-parameter">
						<a href="../interfaces/routerfactory.html" class="tsd-kind-icon">Router<wbr>Factory</a>
					</li>
					<li class=" tsd-kind-interface">
						<a href="../interfaces/validationhandler.html" class="tsd-kind-icon">Validation<wbr>Handler</a>
					</li>
				</ul>
			</nav>
		</div>
	</div>
</div>
<footer class="with-border-bottom">
	<div class="container">
		<h2>Legend</h2>
		<div class="tsd-legend-group">
			<ul class="tsd-legend">
				<li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
				<li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
				<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
				<li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
				<li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
				<li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
				<li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
				<li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
				<li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
				<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
				<li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
				<li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
				<li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
				<li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
				<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
				<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
				<li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
				<li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
				<li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
				<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
				<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
				<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
				<li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
			</ul>
			<ul class="tsd-legend">
				<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
				<li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
			</ul>
		</div>
	</div>
</footer>
<div class="container tsd-generator">
	<p>Generated using <a href="http://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="../assets/js/search.js"><' + '/script>');</script>
</body>
</html>